package com.aaa.qy127.dao;

import com.aaa.qy127.entity.DingDan;

import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;

public interface DingDanDao {

    /**
     * 向 订单详情表中 添加一条数据
     * @param count
     * @param outprice
     * @param userid
     * @return
     */
    int insertOneDingDan(String count, String outprice, Integer userid);

    /**
     * 向 订单详情 表 中 添加 订单详情
     * @param bookid
     * @param count
     * @param outprice
     * @param ddid
     * @return
     */
    int insertDingDanXQ(String bookid, String count, String outprice,Integer ddid);

    /**
     * 查询所有订单信息和搜索
     * @param dingDan
     * @return
     */
    List<Map<String,Object>> queryAlldd(DingDan dingDan);

    /**
     * 查询订单条数
     * @param dingDan
     * @return
     */
    int getAllCount(DingDan dingDan);

    /**
     * 查询一条订单详情
     * @param dingDan
     * @return
     */
    List<Map<String,Object>> queryOnedd(DingDan dingDan);

    /**
     * 查询一条订单详情的条数
     * @param dingDan
     * @return
     */
    int getOneCount(DingDan dingDan);

    /**
     * 向订单 中 插入 已经付款的 信息
     * @param totalcount
     * @param totalprice
     * @return
     */
    int insertDingDan(String totalcount,String totalprice,Integer userid);

    /**
     * 向 订单详情 表中 添加 订单详情
     * @param maps
     * @param ddid
     */
    void insertDingDanXQ(List<Map<String,Object>> maps,int ddid);

    /**
     * 根据 该用户的 userid  查询 该用户的 ddid
     * @param userid
     * @return
     */
    List<Map<String,Object>> getOneDDidByUserid(Integer userid);

    /**
     * 根据查询到的 ddid 查询 该订单的 订单详情
     * @param maps
     * @return
     */
    List<Map<String,Object>> getDingDanXQByddid(List<Map<String,Object>> maps);

    /**
     * 修改订单状态
     * @param ddid
     * @return
     */
    int updatestatus(Integer ddid);

    /**
     * 获取订单详情
     * @param ddid
     * @return
     */
    List<Map<String,Object>> getddxq(Integer ddid);

    /**
     * 获取相应书籍的原有数量
     * @param bookid
     * @return
     */
    int getBookCount(Integer bookid);
    /**
     * 修改相应书籍的数量
     * @param count
     * @param bookid
     * @return
     */
    int updateBookCount(Integer count,Integer bookid);
}
